12#ifndef ROC_PIPELINE_CONFIG_H_
13#define ROC_PIPELINE_CONFIG_H_
const nanoseconds_t Millisecond
One millisecond represented in nanoseconds.
int64_t nanoseconds_t
Nanoseconds.
uint32_t channel_mask_t
Bitmask of channels present in audio packet.
const size_t DefaultInternalFrameSize
Default internal frame size.
const int DefaultMinLatencyFactor
Default minum latency relative to target latency.
const int DefaultMaxLatencyFactor
Default maximum latency relative to target latency.
PortProtocol
Port protocol.
@ Proto_None
Protocol is not set.
const core::nanoseconds_t DefaultPacketLength
Default packet length.
const packet::channel_mask_t DefaultChannelMask
Default channel mask.
const core::nanoseconds_t DefaultLatency
Default latency.
const size_t DefaultSampleRate
Default sample rate, number of samples per second.
PayloadType
RTP payload type.
Various units used in packets.
Commonly used types and functions.
Parameters for latency monitor.
core::nanoseconds_t max_latency
Maximum allowed latency, nanoseconds. If the latency goes out of bounds, the session is terminated.
core::nanoseconds_t min_latency
Minimum allowed latency, nanoseconds. If the latency goes out of bounds, the session is terminated.
size_t internal_frame_size
Number of samples for internal frames.
packet::channel_mask_t output_channels
Output channel mask.
size_t input_sample_rate
Number of samples per second per channel.
packet::channel_mask_t input_channels
Input channel mask.
audio::ResamplerConfig resampler
Resampler parameters.
bool poisoning
Fill unitialized data with large values to make them more noticable.
bool resampling
Resample frames with a constant ratio.
size_t output_sample_rate
Number of samples per second per channel.
packet::Address address
Port address.
PortProtocol protocol
Port protocol.
Receiver common parameters.
packet::channel_mask_t output_channels
Channel mask.
bool beeping
Insert weird beeps instead of silence on packet loss.
bool poisoning
Fill uninitialized data with large values to make them more noticeable.
bool timing
Constrain receiver speed using a CPU timer according to the sample rate.
size_t internal_frame_size
Number of samples for internal frames.
size_t output_sample_rate
Number of samples per second per channel.
bool resampling
Perform resampling to compensate sender and receiver frequency difference.
ReceiverCommonConfig common
Parameters common for all sessions.
ReceiverSessionConfig default_session
Default parameters for receiver session.
Receiver session parameters.
audio::ResamplerConfig resampler
Resampler parameters.
core::nanoseconds_t target_latency
Target latency, nanoseconds.
audio::LatencyMonitorConfig latency_monitor
LatencyMonitor parameters.
fec::ReaderConfig fec_reader
FEC reader parameters.
unsigned int payload_type
Packet payload type.
packet::channel_mask_t channels
Channel mask.
fec::CodecConfig fec_decoder
FEC decoder parameters.
rtp::ValidatorConfig rtp_validator
RTP validator parameters.
audio::WatchdogConfig watchdog
Watchdog parameters.
size_t input_sample_rate
Number of samples per second per channel.
bool resampling
Resample frames with a constant ratio.
bool timing
Constrain receiver speed using a CPU timer according to the sample rate.
core::nanoseconds_t packet_length
Packet length, in nanoseconds.
rtp::PayloadType payload_type
RTP payload type for audio packets.
bool interleaving
Interleave packets.
bool poisoning
Fill unitialized data with large values to make them more noticable.
packet::channel_mask_t input_channels
Channel mask.
fec::CodecConfig fec_encoder
FEC encoder parameters.
fec::WriterConfig fec_writer
FEC writer parameters.
size_t internal_frame_size
Number of samples for internal frames.
audio::ResamplerConfig resampler
Resampler parameters.